In many code development scenarios it can be desirable to be able to verify that code adheres to rules prescribed for interaction of the code with other components. An example of such a scenario is in the context of device driver code that may be called through various operating system features (e.g., tools, functions, interfaces, services, and so forth) to cause operation of a corresponding device.
One limitation of some traditional approaches to the problem of code verification has been unreliability of results. Specifically, in some approaches, verification involves static analysis that is performed to verify compliance of a complete code project against a set of rules, such as by analyzing a device driver as a whole. However, these approaches can result in relatively high instances of non-useful results due to the size and complexity of the code and associated difficulties that may be encountered when attempting verification (e.g., resource overloading, “timing out”, and so forth). Moreover, as these approaches may return a single result for a given rule, verification of code as a whole may not provide granular results as to which portion of the code may have been the cause of a non-compliant result.